using System.Diagnostics;
using Microsoft.Xna.Framework;
using Xfinity.AI.States;

namespace Xfinity.AI.Entities
{
    public abstract class Character : PhysicalEntity
    {
        protected Character(string name, Game game)
            : base(name, game)
        {
            behaviour = new Behaviour();
            behaviour.SetCharacterDisposition(this, float.MaxValue);
            inventory = new Inventory(this, game);
        }

        private Behaviour behaviour;

        public Behaviour Behaviour
        {
            [DebuggerStepThrough]
            get { return behaviour; }
        }
        private Inventory inventory;

        public Inventory Inventory
        {
            [DebuggerStepThrough]
            get { return inventory; }
        }
        private Vector3 movementSpeed = new Vector3(30, 30, 30);

        public Vector3 MovementSpeed
        {
            [DebuggerStepThrough]
            get { return movementSpeed; }
            [DebuggerStepThrough]
            set { movementSpeed = value; }
        }

    }
}
